// pages/mails/goodsInfo/goodsInfo.js
Page({

      /**
       * 页面的初始数据
       */
      data: {
            goodsName: '', // 物品名称
            goodsImg: '', // 物品图片的展示地址
            goodsWeight: '1', // 物品重量
            goodsVolume: '0', // 物品体积
            long: '', // 物品体积-长
            width: '', // 物品体积-宽
            height: '', // 物品体积-高
            goodsText: '', // 物品说明--给快递员说的话

            // 用于控制页面的
            goodsTextLength: '0/20', // 文本框的长度
            hideVolume: true, // 显隐体积选择框 
            goodsNameYes: true, // 控制物品名称组件的显隐
            focus: false, // 输入框焦点
      },

      /**
       * 生命周期函数--监听页面加载
       */
      onLoad: function (options) {
      },

      /**
       * 生命周期函数--监听页面初次渲染完成
       */
      onReady: function () {},

      /* 点击确认按钮 */
      goodsConfirm() {
            let sendExpressData = getApp().globalData['sendExpressData'];
            let goodsInfo = sendExpressData['goodsInfo']
            goodsInfo['goodsName'] = this.data.goodsName
            goodsInfo['goodsImg'] = this.data.goodsImg
            goodsInfo['goodsWeight'] = this.data.goodsWeight
            goodsInfo['goodsVolume'] = this.data.goodsVolume
            goodsInfo['goodsText'] = this.data.goodsText

            wx.navigateBack({
              delta: 1,
            })
      },

      /* 控制组件（物品名称） */
      goodsNameYesTo(e) {
            this.setData({
                  focus: false
            })
            console.log("===", e)
            let name = e.detail['nameValue'] ? e.detail['nameValue'] : this.data.goodsName
            this.setData({
                  goodsNameYes: !this.data.goodsNameYes,
                  goodsName: name
            })
      },
      bindblur() {
            console.log("===--++")
      },

      /* 快速设置物品名称 */
      setGoodsNameFast(e) {
            let value = e.currentTarget.dataset.data;
            this.setGoodsNameTo(value)
      },
      /* 清空物品名称 */
      resetGoodsName() {
            this.setGoodsNameTo('')
      },
      /* 物品名称设值 */
      setGoodsName(e) {
            console.log(e)
            var name = e.detail.value;
            this.setGoodsNameTo(name)
      },
      /* 物品名称设值 */
      setGoodsNameTo(name) {
            this.setData({
                  goodsName: name
            })
      },


      /* 点击选项，进行填值 */
      textareaToTip(e) {
            // console.log(e)
            let data = e.currentTarget.dataset.data;
            if (this.data.goodsText.indexOf(data) !== -1) return;
            data = this.data.goodsText.length !== 0 ? this.data.goodsText + ',' + data : data;
            if (data.length > 20) return;
            this.setTextareaToLong(data)
      },
      /* 文本框文本长度控制 */
      textareaToLong(e) {
            let value = e.detail.value;
            this.setTextareaToLong(value)
      },
      /* 给文本框设置并计算长度 */
      setTextareaToLong(value) {
            this.setData({
                  goodsTextLength: value.length + '/20',
                  goodsText: value
            })
      },

      /* 点击按钮给物品重量或体积设置值：加或减 */
      setValueOne(e) {
            // console.log(e)
            let type = e.currentTarget.dataset.type;
            let this_ = this;
            if (type == '0') {
                  this.setValue(e.currentTarget.id, Number(this_.data[e.currentTarget.id]) - 1, e.currentTarget.id === "goodsWeight" ? 1 : 0, e.currentTarget.id === "goodsWeight" ? 9999 : 999)
            } else {
                  this.setValue(e.currentTarget.id, Number(this_.data[e.currentTarget.id]) + 1, e.currentTarget.id === "goodsWeight" ? 1 : 0, e.currentTarget.id === "goodsWeight" ? 9999 : 99)
            }
      },
      /* 控制物品的最大数量 */
      bindinputToMax(e) {
            // console.log(e)
            let value = e.detail.value;
            let maxValue = e.currentTarget.dataset.max;
            this.setValue(e.currentTarget.id, value, e.currentTarget.id === "goodsWeight" ? 1 : 0, maxValue)
            if (e.currentTarget.id !== "goodsWeight" && e.currentTarget.id !== "goodsVolume") {
                  let math = Number(this.data.long) * Number(this.data.width) * Number(this.data.height) / 1000000;
                  math < 0.0001 ? math = 0 : '';
                  this.setValue('goodsVolume', math, 0, 99)
            }
      },
      /* 给重量和体积设置值的范围 */
      setValue(name, value, min = 0, max) {
            value = Number(value)
            max = Number(max)
            min = Number(min)
            if (value < min) {
                  this.setData({
                        [name]: min
                  })
            } else if (value > max) {
                  this.setData({
                        [name]: max
                  })
            } else {
                  this.setData({
                        [name]: value
                  })
            }
      },
      /* 控制体积框显示和隐藏 */
      hideVolume() {
            this.setData({
                  hideVolume: !this.data.hideVolume
            })
      },

      /* 上传物品照片 */
      chooseImageTo() {
            let this_ = this;
            wx.chooseImage({
                  count: 1,
                  sizeType: ['original', 'compressed'],
                  sourceType: ['album', 'camera'],
                  success(res) {
                        console.log("res", res)
                        this_.setData({
                              goodsImg: res.tempFilePaths
                        })
                  },
                  fail(res) {
                        wx.showToast({
                              icon: 'none',
                              title: '上传文件错误',
                        })
                  }
            })
      },
      /* 删除物品照片 */
      resetImage() {
            this.setData({
                  goodsImg: ''
            })
      },

      /* 提示 */
      otherTo() {
            wx.showModal({
                  content: '物品照片帮助快递员判断是否符合快递规范以及进行选择合适运输工具，不会进行其他用途。',
                  confirmText: '我知道了',
                  showCancel: false
            })
      },


      /**
       * 生命周期函数--监听页面显示
       */
      onShow: function () {

      },

      /**
       * 生命周期函数--监听页面隐藏
       */
      onHide: function () {

      },

      /**
       * 生命周期函数--监听页面卸载
       */
      onUnload: function () {

      },

      /**
       * 页面相关事件处理函数--监听用户下拉动作
       */
      onPullDownRefresh: function () {

      },

      /**
       * 页面上拉触底事件的处理函数
       */
      onReachBottom: function () {

      },

      /**
       * 用户点击右上角分享
       */
      onShareAppMessage: function () {

      }
})